package com.woohua.demo.seal;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;

/**
 * @author woo hua
 */
public class EnumTypes {

    /**
     * 通用状态
     */
    public enum CommonStatus {
        /**
         * 停用
         */
        STATUS_0("停用", "0"),
        /**
         * 正常
         */
        STATUS_1("正常", "1");
        @Getter
        @Setter
        private String name;
        @Getter
        @Setter
        private String value;

        CommonStatus(String name, String value) {
            this.name = name;
            this.value = value;
        }
    }

    /**
     *卡片类型 1:患者自述，2:医生病历，3:电子处方，4:咨询问诊结束
     */
    public enum CardType {
        /**
         * 患者自述
         */
        PATIENT_README("患者自述", "1"),
        /**
         * 病历
         */
        DOCTOR_PATIENT_CASE("病历", "2"),
        /**
         * 处方单
         */
        ELECTRONICS_PRESCRIPTION("处方单", "3"),
        /**
         * 咨询问诊结束
         */
        CONSULTATION_END("咨询问诊结束", "4"),
        ;

        @Getter
        @Setter
        private String name;
        @Getter
        @Setter
        private String value;

        CardType(String name, String value) {
            this.name = name;
            this.value = value;
        }
    }

    /**
     * 盖章签字相关图标类型
     */
    public enum IconSealType {
        /**
         * 已作废签章图片
         */
        ICON_SEAL_VOID(SignSealConst.VOID_ICON, "1"),
        /**
         * 互联网签章图片
         */
        ICON_SEAL_YUNJIANKANG(SignSealConst.YUNJIANKANG_ICON, "2"),
        /**
         * 互联网签章图片
         */
        ICON_SEAL_DEPARTMENT(SignSealConst.DEPARTMENT_ICON, "3"),
        ;

        @Getter
        @Setter
        private String name;
        @Getter
        @Setter
        private String value;

        IconSealType(String name, String value) {
            this.name = name;
            this.value = value;
        }
    }

    /**
     * 排序类型
     */
    @AllArgsConstructor
    public enum IdsType {
        /**
         * 分组管理
         */
        IDS_TYPE_GROUP(1, "分组管理"),
        /**
         * 常用语
         */
        IDS_TYPE_WORDS(2, "常用语"),

        /**
         * 分组患者
         */
        IDS_TYPE_GROUP_PATIENT(3, "分组患者"),
        ;
        @Getter
        @Setter
        private Integer value;
        @Getter
        @Setter
        private String name;

    }

}